#pragma once

#include "common/common.h"
#include "memory/memory.h"

namespace PILO 
{
    namespace Core
    {
        namespace Memory 
        {

            class IMemoryAllocator 
            {

            public:
                virtual ~IMemoryAllocator() {;};

                virtual void* alloc(size_t size) = 0;
                virtual BOOL free(void* p) =0;
                virtual size_t unitSize() const = 0;
                virtual void clear() = 0;

            private:

            };
        }
    }    
}
